﻿using AdvVerifyModels.Models.Requests.Stage;
using AdvVerifyModels.Models.Responses.Stage;
using Refit;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.InteropServices;
using System.Text;
using System.Threading.Tasks;

namespace TestStageServiceDemo
{
    public interface IStageApi
    {
        [Post("/lease")]
        Task<LeaseResponse> Lease(LeaseRequest req);

        [Post("/renew")]
        Task Renew(RenewRequest req);

        [Post("/release?id={id}")]
        Task Release(long id);

        [Post("/reset")]
        Task Reset();

        [Post("/move?id={id}&x={x}&y={y}")]
        Task Move(long id, double x, double y);

        [Post("/rel_move?id={id}&dx={dx}&dy={dy}")]
        Task RelativeMove(long id, double dx, double dy);

        [Post("/go_to_loading_pos?id={id}")]
        Task GoToLoadingPosition(long id);
    }
}
